const baseURL = 'http://localhost:3000'

/**
 * 封装网络请求方法
 */
const service = ({url, method, data, header = {}}) => {
	
	// 没有 url，则结束调用
	if (!url) {
		return Promise.reject(new Error('必须传递请求 url 地址'))
	}
	
	// url 不是绝对地址，则拼接 baseURL 前缀
	if (!(url.startsWith('http://') || url.startsWith('https://'))) {
		url = baseURL + url
	}
	return new Promise((resolve, reject) => {
		uni.request({
			url:url,
			method,
			data,
			header,
			success: res => {
				// 对响应数据进行拦截处理
				if (res.statusCode === 200) {
					resolve(res.data)	
				}
			},
			fail: (err) => {
				reject(err || new Error('接口请求失败'))
			},
		})
	})
}

export default service
